(1) Field of the Invention
The present invention relates to image coding methods, image coding apparatuses, image decoding methods, image decoding apparatuses, and image coding and decoding apparatuses, and particularly relates to an image coding method, an image coding apparatus, an image decoding method, an image decoding apparatus, and an image coding and decoding apparatus which include arithmetic coding or arithmetic decoding.
(2) Description of the Related Art
In recent years, there have been an increasing number of applications for video-on-demand type services, for example, including video conferences, digital video broadcasting, and streaming of video content via the Internet, and these applications depend on transmission of video information. At the time of transmission or recording of video data, a considerable amount of data is transmitted through a conventional transmission path of a limited bandwidth or is stored in a conventional recording medium with limited data capacity. In order to transmit video information through a conventional transmission channel and store video information in a conventional recording medium, it is essential to compress or reduce the amount of digital data.
Thus, a plurality of video coding standards has been developed for compressing video data. Such video coding standards include, for example, the ITU-T standards denoted as H. 26x, produced by the telecommunication standardization sector of the international telecommunication union, and the ISO/IEC standards denoted as MPEG-x. The most up-to-date and advanced video coding standard is currently the standard denoted as H. 264/AVC or MPEG-4 AVC (see Non-Patent Literature 1: ISO/IEC 14496-10 “MPEG-4 Part10 Advanced Video Coding” and Non-Patent Literature 2: Thomas Wiegand et al, “Overveiw of the H. 264/AVC Video Coding Standard”, IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, JULY 2003, PP.1-19).
In the H. 264/AVC standard, the coding process roughly includes prediction, transform, quantization, and entropy coding. Through the entropy coding of this processing, redundant information is cut from information which is used in the prediction, quantized information, and the like. The known examples of the entropy coding include variable-length coding, adaptive coding, and fixed-length coding. The variable-length coding includes Huffman coding, run-length coding, and arithmetic coding.
Of these, the arithmetic coding is a method in which the probability of occurrence of a symbol is calculated to determine an output code. Specifically, in the arithmetic coding, image data is coded in a manner that symbol occurrence probability in a context corresponding to characteristics of image data is predicted while the symbol occurrence probability is updated for each context. Thus, since a code is determined according to characteristics of image data, the arithmetic coding is known for higher coding efficiency than Huffman coding or the like which uses a fixed coding table.